package com.example.spindrift.Controllers;

import com.example.spindrift.models.SysSongType;
import com.example.spindrift.service.SongTypeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/SongType")
public class SongTypeController {
    @Autowired
    SongTypeService service;

    /**
     * 查询所有歌曲类型西
     * @return 歌曲类型信息
     */
    @GetMapping("/getAllSongType")
    public List<SysSongType> getAllSongType() {
        return service.getAllSongType();
    }

    /**
     * 根据类型ID查询歌曲类型信息
     * @param songTypeId 歌曲类型ID
     * @return 歌曲类型信息
     */
    @GetMapping("/getSongTypeById")
    public SysSongType getSongTypeById(@RequestParam Integer songTypeId) {
        return service.getSongTypeById(songTypeId);
    }

    /**
     * 添加一条歌曲类型信息
     * @param songType 歌曲类型信息
     * @return 是否成功
     */
    @PostMapping("/insertSongType")
    public Boolean insertSongType(@RequestBody SysSongType songType) {
        return service.insertSongType(songType) > 0;
    }

    /**
     * 更新一条歌曲类型信息
     * @param songType 歌曲类型
     * @return
     */
    @PutMapping("/updateSongType")
    public Boolean updateSongType(@RequestBody SysSongType songType) {
        return service.updateSongType(songType) > 0;
    }

    /**
     * 删除一条歌曲类型信息
     * @param songTypeId 歌曲类型ID
     * @return
     */
    @DeleteMapping("/deleteSongType")
    public Boolean deleteSongType(@RequestParam Integer songTypeId) {
        return service.deleteSongType(songTypeId) > 0;
    }
}
